home *** CD-ROM | disk | FTP | other *** search
/ HPAVC / HPAVC CD-ROM.iso / AGSBF10.ZIP / AGSBFS.PPE (.txt) < prev    next >
PCBoard Programming Language Executable  |  1994-11-24  |  19KB  |  905 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 2.OO (plain) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Integer  INTEGER001
  20.     Integer  INTEGER002
  21.     Integer  INTEGER003
  22.     Integer  INTEGER004
  23.     Integer  INTEGER005
  24.     Integer  INTEGER006
  25.     Integer  INTEGER007
  26.     Integer  INTEGER008
  27.     Integer  INTEGER009
  28.     Integer  INTEGER010
  29.     Integer  INTEGER011
  30.     Integer  INTEGER012
  31.     Integer  INTEGER013
  32.     Integer  INTEGER014
  33.     Integer  INTEGER015
  34.     Integer  INTEGER016
  35.     Integer  INTEGER017
  36.     Integer  INTEGER018
  37.     Integer  INTEGER019
  38.     Integer  INTEGER020
  39.     Integer  INTEGER021
  40.     Integer  INTEGER022
  41.     Integer  INTEGER023
  42.     Integer  INTEGER024
  43.     Integer  INTEGER025
  44.     Real     REAL001
  45.     Real     REAL002
  46.     Real     REAL003
  47.     String   STRING001
  48.     String   STRING002
  49.     String   STRING003
  50.     String   STRING004
  51.     String   STRING005
  52.     String   STRING006
  53.     String   STRING007
  54.     String   STRING008
  55.     String   STRING009
  56.     String   STRING010
  57.     String   STRING011
  58.     String   STRING012
  59.     String   STRING013
  60.     String   STRING014
  61.     String   STRING015
  62.     String   STRING016
  63.     String   STRING017
  64.     String   STRING018
  65.     String   STRING019
  66.     String   STRING020
  67.     String   STRING021
  68.     String   STRING022
  69.     String   STRING023
  70.     String   STRING024
  71.     String   STRING025
  72.     String   STRING026
  73.     String   STRING027
  74.     String   STRING028
  75.     String   STRING029
  76.     String   STRING030
  77.  
  78. ;------------------------------------------------------------------------------
  79.  
  80.     STRING002 = "AcaDe v1.03"
  81.     STRING003 = "<┤EGiS Corp Anti-Decompilation Engine."
  82.     STRING004 = "(C)1994 By Lone Runner/AGS"
  83.     STRING005 = ""
  84.     STRING006 = "Sorry dude, this time PPLD will not do the job... :)"
  85.     STRING024 = "UPDOWN82" + Chr(13) + Chr(27)
  86.     STRING016 = "@X0FReaD NeXT ? @X1F YES @X08 Nah "
  87.     STRING017 = "@X0FReaD NeXT ? @X08 Yes @X1F NAH "
  88.     INTEGER014 = 1
  89.     INTEGER015 = 1
  90.     INTEGER013 = ReadLine(PPEPath() + "NUSERS.DAT", 1)
  91.     INTEGER005 = 0
  92.     INTEGER006 = 0
  93.     INTEGER007 = 0
  94.     INTEGER008 = 0
  95.     INTEGER009 = 0
  96.     INTEGER010 = 0
  97.     DefColor
  98.     Cls
  99.     Print "@POFF@"
  100.     PrintLn "@X0F─@X0C─@X04─@X0F<┤@X0CE@X04GiS @X0FC@X0Co@X04RP @X0FB@X0Ca@X04TTLe @X0FF@X0Ci@X04eLD @X0FS@X0Cy@X04SoP @X0Fu@X0CT@X04iLS─────────────@X0C─@X0F┬@X0C─@X04────@X0FB@X0Cy @X0FN@X0Cu@X04MBeR @X0FS@X0Ci@X04X─────@X0C─@X0F┐"
  101.     PrintLn "@X06░ ▒ @X0E░   @X06░ @X07▐█▄ @X0C▀▀  @X0F▄▄  @X0C▀   @X0F▄▄ @X7F▓@X0F ▄@X7F█@X0F▄ @X07▄@X7F░@X07▄  @X06▐▌ █▒   ░▀▀▄▓@X0C│                        │"
  102.     PrintLn "@X0C  @X06░  ░ ░   @X07█@X7F░@X07█▄@X7F▒▓@X0F█████▄██▄██@X7F▓█@X0F▐█@X7F▓▓@X0F█@X7F░@X07█▀ @X0C▀@X6C▓@X0F   @X06░    @X0E░  @X06▒@X04│                        │"
  103.     PrintLn "@X04 @X6E░@X06█░ ▒@X0E░ @X06░   @X07▀▀@X7F▒▓@X0F█▀███████▌██@X7F▓@X0F▀▀ @X7F▒@X78░@X0F      @X0C▐▌   @X0E░   ▒  @X06▐@X04│                        │"
  104.     PrintLn "@X6E░▒░@X06█@X6E░@X06▓@X0E▒ @X06▒ ░            @X0F▀         @X7F░@X0F     @X0C▀▄@X6C▓@X0C▌ @X06▄@X0E▒ ░ ▓ @X06▄▌@X04│                        │"
  105.     PrintLn "@X0E█▌@X6E▒@X06▄@X6E▒░@X0E▓@X6E░@X06▓@X6E░@X06▒   @X0C▄▀                 @X07▐▌     @X0C▐▀@X6C▒@X0F  @X0E▓░▒▓▓@X6E░▓@X07 @X04│                        │"
  106.     PrintLn "@X04 @X0E▀@X6E█▒@X0E█@X6E▓@X0E▀@X6E▒░▒@X06░▓     @X0F▄▄@X7F░@X0F▄   @X04▄▄▄█▓█▓▄  @X07█   @X08▄  @X0C▐@X06▌  @X0E▐@X6E▓▒▒@X0E█▀  @X04│                        │"
  107.     PrintLn "@X04▄ @X0E▀ ▀▄▀▀▄@X6E▓@X0E▀    @X0F▐▀▄▀▀  @X04▄████▓▓████ @X07▐▌▄@X78▓@X08▄ @X04■ @X6C▒@X0F   @X0E▀▀   @X0C▄█@X04│                        │"
  108.     PrintLn "@X04██▀ ▄       ▄  @X0F▀@X7F░▒@X0F▄@X7F▓@X0F ▄▄▄@X04▀@X0F▄▄@X04▀▀▀@X0F▄▄▄▄@X7F▒░@X78░▒▓@X08▀ @X04▌@X6C░@X0C▌     ▄██ @X04│                        │"
  109.     PrintLn "@X04▀      ▄     ▀  @X0F▀@X7F▒▓█▓@X0F██@X7F▓@X0F█████████@X7F▓▓@X07▐@X7F░@X78░@X08▀ @X04▓ @X6C▒@X0F     @X0C▄█▀ ▄@X04│                        │"
  110.     PrintLn "@X04   ▄▄█▀     @X07███@X0C▄@X6C▓@X0C▄▄▄▄▄▄▄@X0F▀▀▀▀███▐@X7F▓@X0F▀▀@X07▄▀ @X04▄▓▀@X0C▐▌@X07███ @X0C▐█  ▀ @X04│                        │"
  111.     PrintLn "@X04████▀ ▄ ▀  ▄█@X07█ @X0C▐██▀█@X6C▓▓▓▓▒▒░░@X06▄▄░▄▄ ▓ @X04▀▓▀@X06▄▓@X6C▒@X0C░@X07██  @X0C▀ @X07█@X06▄▌ @X04│                        │"
  112.     PrintLn "@X0F┌@X09─@X01─────────────────────────────────────────────────@X09─@X0F┐@X04│                        │"
  113.     PrintLn "@X09│                                                   │@X04│                        │"
  114.     PrintLn "@X01│                                                   │@X04│                        │"
  115.     PrintLn "@X01│                                                   │@X04│                        │"
  116.     PrintLn "@X01│                                                   │@X04│                        │"
  117.     PrintLn "@X01│                                                   │@X04│                        │"
  118.     PrintLn "@X01│                                                   │@X04│                        │"
  119.     PrintLn "@X01│                                                   │@X04│                        │"
  120.     PrintLn "@X09│                                                   │@X0C│                        │"
  121.     PrintLn "@X0F└@X09─@X01─────────────────────────────────────────────────@X09─@X0F┘└@X0C─@X04──────────────────────@X0C─@X0F┘"
  122.     :LABEL001
  123.     Gosub LABEL022
  124.     INTEGER005 = 0
  125.     INTEGER006 = 0
  126.     INTEGER007 = 0
  127.     INTEGER008 = 0
  128.     INTEGER009 = 0
  129.     INTEGER010 = 0
  130.     Gosub LABEL018
  131.     STRING026 = PPEPath() + "NUSERS.DAT"
  132.     STRING027 = PPEPath() + "REGD.DAT"
  133.     Gosub LABEL011
  134.     If (STRING028 == "") Goto LABEL010
  135.     AnsiPos 62, 22
  136.     Print "@X8FLoaDiNG..."
  137.     STRING021 = STRING028
  138.     Gosub LABEL019
  139.     FOpen 1, STRING022, 0, 2
  140.     FGet 1, STRING023
  141.     FGet 1, INTEGER005
  142.     :LABEL002
  143.     FGet 1, STRING020
  144.     If (STRING020 == "[iS_HaTiNG]") Then
  145.         :LABEL003
  146.         FGet 1, STRING020
  147.         If (STRING020 <> "[eND]") INTEGER010 = INTEGER010 + 1
  148.         If (STRING020 <> "[eND]") Goto LABEL003
  149.     Endif
  150.     If (STRING020 == "[iS_HaTeD_BY]") Then
  151.         :LABEL004
  152.         FGet 1, STRING020
  153.         If (STRING020 <> "[eND]") INTEGER009 = INTEGER009 + 1
  154.         If (STRING020 <> "[eND]") Goto LABEL004
  155.     Endif
  156.     If (STRING020 <> "[eND_DaTa]") Goto LABEL002
  157.     REAL001 = INTEGER013
  158.     REAL003 = INTEGER009 + INTEGER010
  159.     REAL002 = (100 / ((REAL001 - 1) * 2)) * REAL003
  160.     INTEGER011 = REAL002
  161.     FClose 1
  162.     FOpen 1, STRING022, 0, 2
  163.     :LABEL005
  164.     FGet 1, STRING019
  165.     If (STRING019 == "[BeGiN_MeSSaGe]") INTEGER006 = INTEGER006 + 1
  166.     If (STRING019 == "[BeGiN_BRiBe_GiFT]") INTEGER007 = INTEGER007 + 1
  167.     If (STRING019 == "[BeGiN_DeCLaRaTioN]") INTEGER008 = INTEGER008 + 1
  168.     If (STRING019 <> "[eND_DaTa]") Goto LABEL005
  169.     FClose 1
  170.     AnsiPos 62, 22
  171.     Print "@X04──────────"
  172.     DefColor
  173.     Gosub LABEL028
  174.     Gosub LABEL020
  175.     STRING018 = "#"
  176.     :LABEL006
  177.     STRING018 = Inkey()
  178.     If (InStr(STRING024, STRING018) == 0) Goto LABEL006
  179.     If ((STRING018 == "UP") || (STRING018 == "8")) Then
  180.         INTEGER014 = INTEGER015
  181.         If (INTEGER015 == 1) Then
  182.             INTEGER015 = 8
  183.             Goto LABEL007
  184.         Endif
  185.         INTEGER015 = INTEGER015 - 1
  186.         :LABEL007
  187.         Gosub LABEL020
  188.     Endif
  189.     If ((STRING018 == "DOWN") || (STRING018 == "2")) Then
  190.         INTEGER014 = INTEGER015
  191.         If (INTEGER015 == 8) Then
  192.             INTEGER015 = 1
  193.             Goto LABEL008
  194.         Endif
  195.         INTEGER015 = INTEGER015 + 1
  196.         :LABEL008
  197.         Gosub LABEL020
  198.     Endif
  199.     If (STRING018 == Chr(13)) Goto LABEL009
  200.     If (STRING018 == Chr(27)) Goto LABEL001
  201.     Goto LABEL006
  202.     :LABEL009
  203.     INTEGER017 = GetX()
  204.     INTEGER018 = GetY()
  205.     If (INTEGER015 == 1) Gosub LABEL023
  206.     If (INTEGER015 == 2) Gosub LABEL024
  207.     If (INTEGER015 == 3) Gosub LABEL037
  208.     If (INTEGER015 == 4) Gosub LABEL040
  209.     If (INTEGER015 == 5) Gosub LABEL043
  210.     If (INTEGER015 == 6) Gosub LABEL031
  211.     If (INTEGER015 == 7) Gosub LABEL034
  212.     If (INTEGER015 == 8) Gosub LABEL029
  213.     AnsiPos INTEGER017, INTEGER018
  214.     Goto LABEL006
  215.     :LABEL010
  216.     AnsiPos 1, 23
  217.     Wait
  218.     DefColor
  219.     End
  220.     :LABEL011
  221.     INTEGER023 = S2I(ReadLine(STRING026, 1), 10)
  222.     FClose -1
  223.     INTEGER024 = 1
  224.     Gosub LABEL017
  225.     INTEGER025 = 1
  226.     Gosub LABEL015
  227.     :LABEL012
  228.     STRING030 = Inkey()
  229.     STRING030 = Upper(STRING030)
  230.     If (STRING030 == "") Goto LABEL012
  231.     If ((STRING030 == "DOWN") || (STRING030 == "2")) Then
  232.         If (INTEGER025 < INTEGER023) Then
  233.             If (INTEGER025 < INTEGER024 + 15) Then
  234.                 Gosub LABEL016
  235.                 Inc INTEGER025
  236.                 Gosub LABEL015
  237.                 Goto LABEL012
  238.                 Goto LABEL013
  239.             Endif
  240.             Gosub LABEL016
  241.             INTEGER024 = INTEGER024 + 16
  242.             Gosub LABEL017
  243.             INTEGER025 = INTEGER024
  244.             Gosub LABEL015
  245.             Goto LABEL012
  246.         Endif
  247.     Endif
  248.     :LABEL013
  249.     If ((STRING030 == "UP") || (STRING030 == "8")) Then
  250.         If (INTEGER025 > 1) Then
  251.             If (INTEGER025 > INTEGER024) Then
  252.                 Gosub LABEL016
  253.                 Dec INTEGER025
  254.                 Gosub LABEL015
  255.                 Goto LABEL012
  256.                 Goto LABEL014
  257.             Endif
  258.             Gosub LABEL016
  259.             INTEGER024 = INTEGER024 - 16
  260.             Gosub LABEL017
  261.             INTEGER025 = INTEGER024 + 15
  262.             Gosub LABEL015
  263.             Goto LABEL012
  264.         Endif
  265.     Endif
  266.     :LABEL014
  267.     If (((STRING030 == "PGDN") || (STRING030 == "3")) || (STRING030 == "D")) Then
  268.         If (INTEGER024 + 15 < INTEGER023) Then
  269.             INTEGER002 = INTEGER025
  270.             Gosub LABEL016
  271.             INTEGER024 = INTEGER024 + 16
  272.             Gosub LABEL017
  273.             INTEGER025 = INTEGER002 + 16
  274.             If (INTEGER025 > INTEGER023) INTEGER025 = INTEGER023
  275.             Gosub LABEL015
  276.             Goto LABEL012
  277.         Endif
  278.     Endif
  279.     If (((STRING030 == "PGUP") || (STRING030 == "9")) || (STRING030 == "U")) Then
  280.         If (INTEGER024 > 1) Then
  281.             INTEGER002 = INTEGER025
  282.             Gosub LABEL016
  283.             INTEGER024 = INTEGER024 - 16
  284.             Gosub LABEL017
  285.             INTEGER025 = INTEGER002 - 16
  286.             Gosub LABEL015
  287.             Goto LABEL012
  288.         Endif
  289.     Endif
  290.     If (STRING030 == Chr(27)) Then
  291.         FClose -1
  292.         STRING028 = ""
  293.         Return
  294.     Endif
  295.     If (STRING030 == Chr(13)) Then
  296.         STRING028 = ReadLine(STRING027, INTEGER025)
  297.         FClose -1
  298.         Return
  299.     Endif
  300.     Goto LABEL012
  301.     :LABEL015
  302.     AnsiPos 55, 5 + INTEGER025 - INTEGER024
  303.     STRING029 = ReadLine(STRING027, INTEGER025)
  304.     STRING029 = Space((24 - Len(STRING029)) / 2) + Upper(STRING029) + Space((24 - Len(STRING029)) / 2)
  305.     Print "@X1F", STRING029 + Space(24 - Len(STRING029))
  306.     Return
  307.     :LABEL016
  308.     AnsiPos 55, 5 + INTEGER025 - INTEGER024
  309.     STRING029 = ReadLine(STRING027, INTEGER025)
  310.     STRING029 = Space((24 - Len(STRING029)) / 2) + STRING029 + Space((24 - Len(STRING029)) / 2)
  311.     Print "@X0F", STRING029 + Space(24 - Len(STRING029))
  312.     Return
  313.     :LABEL017
  314.     For INTEGER025 = INTEGER024 To INTEGER024 + 15
  315.         Gosub LABEL016
  316.     Next
  317.     Return
  318.     :LABEL018
  319.     AnsiPos 2, 14
  320.     PrintLn "@X07 uSeR NaMe    @X0F:                                    "
  321.     AnsiPos 2, 15
  322.     PrintLn "@X07 CReDiTS      @X0F:                                    "
  323.     AnsiPos 2, 16
  324.     PrintLn "@X07 WaiTiNG MsGS.@X0F:                                    "
  325.     AnsiPos 2, 17
  326.     PrintLn "@X07 WaiTiNG BRiB.@X0F:                                    "
  327.     AnsiPos 2, 18
  328.     PrintLn "@X07 WaiTiNG DeCL.@X0F:                                    "
  329.     AnsiPos 2, 19
  330.     PrintLn "@X07 HaTeD By     @X0F:                                    "
  331.     AnsiPos 2, 20
  332.     PrintLn "@X07 HaTeS        @X0F:                                    "
  333.     AnsiPos 2, 21
  334.     PrintLn "@X07 HaTe-o-MeTeR @X0F:                                    "
  335.     Return
  336.     :LABEL019
  337.     STRING021 = Upper(STRING021)
  338.     INTEGER004 = 0
  339.     For INTEGER003 = 1 To Len(STRING021)
  340.         INTEGER004 = INTEGER004 + Asc(Mid(STRING021, INTEGER003, 1))
  341.     Next
  342.     STRING029 = I2S(INTEGER004, 16)
  343.     STRING022 = Trim(PPEPath() + "DATA\" + Left(Trim(STRING021, " "), 3) + Right(Trim(STRING021, " "), 4) + Left(STRING029, 1) + "." + Mid(STRING029, 2, 3), " ")
  344.     Return
  345.     :LABEL020
  346.     AnsiPos 2, INTEGER014 + 13
  347.     Print "@X07" + ScrText(2, INTEGER014 + 13, 14, 0)
  348.     AnsiPos 2, INTEGER015 + 13
  349.     Print "@X1F" + ScrText(2, INTEGER015 + 13, 14, 0)
  350.     Return
  351.     :LABEL021
  352.     DefColor
  353.     For INTEGER001 = 2 To 21
  354.         AnsiPos 55, INTEGER001
  355.         Print Space(24)
  356.     Next
  357.     Return
  358.     :LABEL022
  359.     AnsiPos 60, 3
  360.     Print "@X0FSeLeCT a uSeR"
  361.     AnsiPos 56, 4
  362.     Print "@X0F─@X0C─@X04──────────────────@X0C─@X0F─"
  363.     Return
  364.     :LABEL023
  365.     Gosub LABEL021
  366.     AnsiPos 62, 3
  367.     Print "@X0FuSeR iNFo"
  368.     AnsiPos 56, 4
  369.     Print "@X0F─@X0C─@X04──────────────────@X0C─@X0F─"
  370.     STRING023 = Upper(STRING023)
  371.     INTEGER016 = U_RecNum(STRING023)
  372.     GetAltUser INTEGER016
  373.     Color 15
  374.     AnsiPos 56, 5
  375.     STRING025 = STRING023
  376.     Gosub LABEL027
  377.     Print STRING025
  378.     AnsiPos 56, 6
  379.     STRING025 = U_City
  380.     Gosub LABEL027
  381.     Print STRING025
  382.     AnsiPos 56, 7
  383.     STRING025 = String(U_HVPhone)
  384.     Gosub LABEL027
  385.     Print STRING025
  386.     AnsiPos 56, 8
  387.     STRING025 = String(U_BDPhone)
  388.     Gosub LABEL027
  389.     Print STRING025
  390.     AnsiPos 56, 10
  391.     STRING025 = "SeC: " + String(U_Sec)
  392.     Gosub LABEL027
  393.     Print STRING025
  394.     AnsiPos 56, 11
  395.     STRING025 = "PwD: " + U_Pwd
  396.     Gosub LABEL027
  397.     Print STRING025
  398.     DefColor
  399.     Return
  400.     :LABEL024
  401.     Gosub LABEL021
  402.     AnsiPos 61, 3
  403.     Print "@X0FCReDiT iNFo"
  404.     AnsiPos 56, 4
  405.     Print "@X0F─@X0C─@X04──────────────────@X0C─@X0F─"
  406.     AnsiPos 56, 6
  407.     STRING025 = String(INTEGER005) + " CReDiTZ"
  408.     Gosub LABEL027
  409.     Print STRING025
  410.     STRING007 = "RIGHT"
  411.     STRING013 = "@X0FaDJuST CReDZ @X1F YES @X08 Nah "
  412.     STRING012 = "@X0FaDJuST CReDZ@X08  Yes @X1F NAH "
  413.     AnsiPos 56, 8
  414.     STRING009 = GetY()
  415.     DispStr STRING012
  416.     :LABEL025
  417.     STRING008 = Inkey()
  418.     If (((STRING008 <> "LEFT") && (STRING008 <> "RIGHT")) && (STRING008 <> Chr(13))) Goto LABEL025
  419.     If (STRING008 <> Chr(13)) Then
  420.         STRING007 = STRING008
  421.         If (STRING007 == "LEFT") Then
  422.             AnsiPos 56, 8
  423.             DispStr STRING013
  424.             DefColor
  425.         Endif
  426.         If (STRING007 == "RIGHT") Then
  427.             AnsiPos 56, 8
  428.             DispStr STRING012
  429.             DefColor
  430.         Endif
  431.         Goto LABEL025
  432.     Endif
  433.     If (STRING007 == "LEFT") Then
  434.         AnsiPos 56, 10
  435.         INTEGER019 = INTEGER005
  436.         InputText "@X0FNeW VaLue", INTEGER019, 15, 4
  437.         If (String(INTEGER019) <> "") INTEGER005 = INTEGER019
  438.         FOpen 1, PPEPath() + "BFSTMP." + String(PcbNode()), 1, 0
  439.         FOpen 2, STRING022, 0, 2
  440.         FGet 2, STRING014
  441.         FGet 2, STRING014
  442.         FPutLn 1, Upper(STRING023)
  443.         FPutLn 1, String(INTEGER005)
  444.         :LABEL026
  445.         FGet 2, STRING014
  446.         FPutLn 1, STRING014
  447.         If (STRING014 <> "[eND_DaTa]") Goto LABEL026
  448.         FClose 2
  449.         FClose 1
  450.         Delete STRING022
  451.         Copy PPEPath() + "BFSTMP." + String(PcbNode()), STRING022
  452.         Delete PPEPath() + "BFSTMP." + String(PcbNode())
  453.         Gosub LABEL028
  454.         Goto LABEL024
  455.     Endif
  456.     AnsiPos 56, 8
  457.     DefColor
  458.     Print Space(23)
  459.     Return
  460.     :LABEL027
  461.     STRING025 = Mid(STRING025, 1, 22)
  462.     STRING025 = Replace(STRING025, "0", "o")
  463.     STRING025 = Replace(STRING025, "A", "a")
  464.     STRING025 = Replace(STRING025, "E", "e")
  465.     STRING025 = Replace(STRING025, "I", "i")
  466.     STRING025 = Replace(STRING025, "O", "o")
  467.     STRING025 = Replace(STRING025, "U", "u")
  468.     STRING025 = Trim(STRING025, " ")
  469.     STRING025 = Space((22 - Len(STRING025)) / 2) + STRING025
  470.     Return
  471.     :LABEL028
  472.     Print "@X0F"
  473.     AnsiPos 18, 14
  474.     Print STRING023
  475.     AnsiPos 18, 15
  476.     Print String(INTEGER005) + Space(5)
  477.     AnsiPos 18, 16
  478.     Print String(INTEGER006)
  479.     AnsiPos 18, 17
  480.     Print String(INTEGER007)
  481.     AnsiPos 18, 18
  482.     Print String(INTEGER008)
  483.     AnsiPos 18, 19
  484.     Print String(INTEGER009)
  485.     AnsiPos 18, 20
  486.     Print String(INTEGER010)
  487.     AnsiPos 18, 21
  488.     Print String(INTEGER011) + "%"
  489.     Return
  490.     :LABEL029
  491.     Gosub LABEL021
  492.     AnsiPos 61, 3
  493.     Print "@X0FHaTe-o-MeTeR"
  494.     AnsiPos 56, 4
  495.     Print "@X0F─@X0C─@X04──────────────────@X0C─@X0F─"
  496.     REAL001 = INTEGER013
  497.     REAL003 = INTEGER009 + INTEGER010
  498.     REAL002 = (22 / ((REAL001 - 1) * 2)) * REAL003
  499.     If (REAL002 > 22) REAL002 = 22
  500.     STRING010 = "@X0A■"
  501.     INTEGER021 = 1
  502.     While (INTEGER021 < REAL002) Do
  503.         If (INTEGER021 == 10) STRING010 = STRING010 + "@X0E"
  504.         If (INTEGER021 == 19) STRING010 = STRING010 + "@X0C"
  505.         STRING010 = STRING010 + "■"
  506.         Inc INTEGER021
  507.     EndWhile
  508.     STRING010 = STRING010 + "@X0F"
  509.     While (Len(StripAtx(STRING010)) < 22) Do
  510.         STRING010 = STRING010 + "·"
  511.     EndWhile
  512.     AnsiPos 56, 6
  513.     PrintLn STRING010
  514.     AnsiPos 55, 7
  515.     If (REAL002 < 2) Then
  516.         PrintLn "      PeaCeFull...     "
  517.     ElseIf (REAL002 < 5) Then
  518.         PrintLn "       NoT BaD...      "
  519.     ElseIf (REAL002 < 10) Then
  520.         PrintLn "     iT CoMeS !...     "
  521.     ElseIf (REAL002 < 15) Then
  522.         PrintLn "     ReaLLy GooD !     "
  523.     ElseIf (REAL002 <= 20) Then
  524.         PrintLn "     ouTSTaNDiNG !!    "
  525.     ElseIf (REAL002 > 20) Then
  526.         PrintLn "    !¡!  FuRiouS !¡!   "
  527.         Goto LABEL030
  528.     Endif
  529.     :LABEL030
  530.     Return
  531.     :LABEL031
  532.     Gosub LABEL021
  533.     AnsiPos 63, 3
  534.     Print "@X0FHaTeD By"
  535.     AnsiPos 56, 4
  536.     Print "@X0F─@X0C─@X04──────────────────@X0C─@X0F─"
  537.     INTEGER020 = 0
  538.     FOpen 2, STRING022, 0, 0
  539.     :LABEL032
  540.     FGet 2, STRING020
  541.     If (STRING020 == "[iS_HaTeD_BY]") Then
  542.         :LABEL033
  543.         FGet 2, STRING020
  544.         If (STRING020 <> "[eND]") Then
  545.             INTEGER020 = INTEGER020 + 1
  546.             If (INTEGER020 == 17) Then
  547.                 AnsiPos 1, 23
  548.                 Wait
  549.                 Gosub LABEL021
  550.                 AnsiPos 63, 3
  551.                 Print "@X0FHaTeD By"
  552.                 AnsiPos 56, 4
  553.                 Print "@X0F─@X0C─@X04──────────────────@X0C─@X0F─"
  554.                 INTEGER020 = 1
  555.             Endif
  556.             AnsiPos 56, 4 + INTEGER020
  557.             STRING025 = STRING020
  558.             Gosub LABEL027
  559.             Print STRING025
  560.         Endif
  561.         If (STRING020 <> "[eND]") Goto LABEL033
  562.     Endif
  563.     If (STRING020 <> "[eND_DaTa]") Goto LABEL032
  564.     FClose 2
  565.     Return
  566.     :LABEL034
  567.     Gosub LABEL021
  568.     AnsiPos 64, 3
  569.     Print "@X0FHaTeS"
  570.     AnsiPos 56, 4
  571.     Print "@X0F─@X0C─@X04──────────────────@X0C─@X0F─"
  572.     INTEGER020 = 0
  573.     FOpen 2, STRING022, 0, 0
  574.     :LABEL035
  575.     FGet 2, STRING020
  576.     If (STRING020 == "[iS_HaTiNG]") Then
  577.         :LABEL036
  578.         FGet 2, STRING020
  579.         If (STRING020 <> "[eND]") Then
  580.             INTEGER020 = INTEGER020 + 1
  581.             If (INTEGER020 == 17) Then
  582.                 AnsiPos 1, 23
  583.                 Wait
  584.                 Gosub LABEL021
  585.                 AnsiPos 64, 3
  586.                 Print "@X0FHaTeS"
  587.                 AnsiPos 56, 4
  588.                 Print "@X0F─@X0C─@X04──────────────────@X0C─@X0F─"
  589.                 INTEGER020 = 1
  590.             Endif
  591.             AnsiPos 56, 4 + INTEGER020
  592.             STRING025 = STRING020
  593.             Gosub LABEL027
  594.             Print STRING025
  595.         Endif
  596.         If (STRING020 <> "[eND]") Goto LABEL036
  597.     Endif
  598.     If (STRING020 <> "[eND_DaTa]") Goto LABEL035
  599.     FClose 2
  600.     Return
  601.     :LABEL037
  602.     INTEGER022 = 0
  603.     Gosub LABEL021
  604.     AnsiPos 63, 3
  605.     Print "@X0FMeSSaGeS"
  606.     AnsiPos 56, 4
  607.     Print "@X0F─@X0C─@X04──────────────────@X0C─@X0F─"
  608.     If (INTEGER006 == 0) Then
  609.         STRING025 = "SoRRY, No MeSSaGeS"
  610.         Gosub LABEL027
  611.         AnsiPos 56, 6
  612.         Print STRING025
  613.         Return
  614.     Endif
  615.     FOpen 1, STRING022, 0, 0
  616.     :LABEL038
  617.     FGet 1, STRING011
  618.     If (STRING011 <> "[MeSSaGeS_WaiTiNG]") Goto LABEL038
  619.     :LABEL039
  620.     Gosub LABEL021
  621.     FGet 1, STRING015
  622.     FGet 1, STRING015
  623.     Color 15
  624.     STRING025 = "FRoM " + STRING015
  625.     Gosub LABEL027
  626.     AnsiPos 56, 2
  627.     Print STRING025
  628.     FGet 1, STRING015
  629.     If (STRING015 == "0") STRING015 = "SiGNeD"
  630.     If (STRING015 == "1") STRING015 = "aNoNYMouS"
  631.     STRING025 = STRING015
  632.     Gosub LABEL027
  633.     AnsiPos 56, 3
  634.     Print STRING025
  635.     AnsiPos 56, 4
  636.     Print "@X0F─@X0C─@X04──────────────────@X0C─@X0F─"
  637.     INTEGER022 = INTEGER022 + 1
  638.     For INTEGER012 = 1 To 16
  639.         FGet 1, STRING015
  640.         STRING025 = STRING015
  641.         Gosub LABEL027
  642.         AnsiPos 56, 4 + INTEGER012
  643.         Print STRING025
  644.     Next
  645.     FGet 1, STRING015
  646.     Gosub LABEL046
  647.     If (INTEGER022 == INTEGER006) Then
  648.         AnsiPos 1, 23
  649.         Wait
  650.     Else
  651.         If (STRING007 == "LEFT") Goto LABEL039
  652.     Endif
  653.     AnsiPos 56, 2
  654.     Print Space(23)
  655.     AnsiPos 56, 3
  656.     Print Space(23)
  657.     FClose 1
  658.     Return
  659.     :LABEL040
  660.     INTEGER022 = 0
  661.     Gosub LABEL021
  662.     AnsiPos 64, 3
  663.     Print "@X0FBRiBeS"
  664.     AnsiPos 56, 4
  665.     Print "@X0F─@X0C─@X04──────────────────@X0C─@X0F─"
  666.     If (INTEGER007 == 0) Then
  667.         STRING025 = "SoRRY, No BRiBeS"
  668.         Gosub LABEL027
  669.         AnsiPos 56, 6
  670.         Print STRING025
  671.         Return
  672.     Endif
  673.     FOpen 1, STRING022, 0, 0
  674.     :LABEL041
  675.     FGet 1, STRING011
  676.     If (STRING011 <> "[BRiBe_GiFT]") Goto LABEL041
  677.     :LABEL042
  678.     Gosub LABEL021
  679.     FGet 1, STRING015
  680.     FGet 1, STRING015
  681.     Color 15
  682.     STRING025 = "FRoM " + STRING015
  683.     Gosub LABEL027
  684.     AnsiPos 56, 2
  685.     Print STRING025
  686.     FGet 1, STRING015
  687.     If (STRING015 == "0") STRING015 = "SiGNeD"
  688.     If (STRING015 == "1") STRING015 = "aNoNYMouS"
  689.     STRING025 = STRING015
  690.     FGet 1, STRING015
  691.     STRING025 = STRING025 + " [" + STRING015 + " CReDZ]"
  692.     Gosub LABEL027
  693.     AnsiPos 56, 3
  694.     Print STRING025
  695.     AnsiPos 56, 4
  696.     Print "@X0F─@X0C─@X04──────────────────@X0C─@X0F─"
  697.     INTEGER022 = INTEGER022 + 1
  698.     For INTEGER012 = 1 To 11
  699.         FGet 1, STRING015
  700.         STRING025 = STRING015
  701.         Gosub LABEL027
  702.         AnsiPos 56, 4 + INTEGER012
  703.         Print STRING025
  704.     Next
  705.     FGet 1, STRING015
  706.     Gosub LABEL046
  707.     If (INTEGER022 == INTEGER007) Then
  708.         AnsiPos 1, 23
  709.         Wait
  710.     Else
  711.         If (STRING007 == "LEFT") Goto LABEL042
  712.     Endif
  713.     AnsiPos 56, 2
  714.     Print Space(23)
  715.     AnsiPos 56, 3
  716.     Print Space(23)
  717.     FClose 1
  718.     Return
  719.     :LABEL043
  720.     INTEGER022 = 0
  721.     Gosub LABEL021
  722.     AnsiPos 61, 3
  723.     Print "@X0FDeCLaRaTioNS"
  724.     AnsiPos 56, 4
  725.     Print "@X0F─@X0C─@X04──────────────────@X0C─@X0F─"
  726.     If (INTEGER008 == 0) Then
  727.         STRING025 = "SoRRY, No DeCLaRaTioNS"
  728.         Gosub LABEL027
  729.         AnsiPos 56, 6
  730.         Print STRING025
  731.         Return
  732.     Endif
  733.     FOpen 1, STRING022, 0, 0
  734.     :LABEL044
  735.     FGet 1, STRING011
  736.     If (STRING011 <> "[DeCLaRaTioNS]") Goto LABEL044
  737.     :LABEL045
  738.     Gosub LABEL021
  739.     FGet 1, STRING015
  740.     FGet 1, STRING015
  741.     Color 15
  742.     STRING025 = "FRoM " + STRING015
  743.     Gosub LABEL027
  744.     AnsiPos 56, 2
  745.     Print STRING025
  746.     FGet 1, STRING015
  747.     If (STRING015 == "0") STRING015 = "SiGNeD"
  748.     If (STRING015 == "1") STRING015 = "aNoNYMouS"
  749.     STRING025 = STRING015
  750.     Gosub LABEL027
  751.     AnsiPos 56, 3
  752.     Print STRING025
  753.     AnsiPos 56, 4
  754.     Print "@X0F─@X0C─@X04──────────────────@X0C─@X0F─"
  755.     INTEGER022 = INTEGER022 + 1
  756.     For INTEGER012 = 1 To 11
  757.         FGet 1, STRING015
  758.         STRING025 = STRING015
  759.         Gosub LABEL027
  760.         AnsiPos 56, 4 + INTEGER012
  761.         Print STRING025
  762.     Next
  763.     FGet 1, STRING015
  764.     Gosub LABEL046
  765.     If (INTEGER022 == INTEGER008) Then
  766.         AnsiPos 1, 23
  767.         Wait
  768.     Else
  769.         If (STRING007 == "LEFT") Goto LABEL045
  770.     Endif
  771.     AnsiPos 56, 2
  772.     Print Space(23)
  773.     AnsiPos 56, 3
  774.     Print Space(23)
  775.     FClose 1
  776.     Return
  777.     :LABEL046
  778.     STRING007 = "LEFT"
  779.     AnsiPos 56, 21
  780.     DispStr STRING016
  781.     :LABEL047
  782.     STRING008 = Inkey()
  783.     If (((STRING008 <> "LEFT") && (STRING008 <> "RIGHT")) && (STRING008 <> Chr(13))) Goto LABEL047
  784.     If (STRING008 <> Chr(13)) Then
  785.         STRING007 = STRING008
  786.         If (STRING007 == "RIGHT") Then
  787.             AnsiPos 56, 21
  788.             DispStr STRING017
  789.             DefColor
  790.         Endif
  791.         If (STRING007 == "LEFT") Then
  792.             AnsiPos 56, 21
  793.             DispStr STRING016
  794.             DefColor
  795.         Endif
  796.         Goto LABEL047
  797.     Endif
  798.     AnsiPos 56, 21
  799.     DefColor
  800.     Print Space(23)
  801.     Return
  802.  
  803. ;------------------------------------------------------------------------------
  804. ;
  805. ; Usage report (before postprocessing)
  806. ;
  807. ; ■ Statements used :
  808. ;
  809. ;    1       End
  810. ;    1       Cls
  811. ;    6       Wait
  812. ;    4       Color 
  813. ;    106     Goto 
  814. ;    158     Let 
  815. ;    71      Print 
  816. ;    37      PrintLn 
  817. ;    97      If 
  818. ;    9       FOpen 
  819. ;    12      FClose 
  820. ;    32      FGet 
  821. ;    3       FPutLn 
  822. ;    11      DefColor
  823. ;    2       Delete 
  824. ;    73      Gosub 
  825. ;    24      Return
  826. ;    2       Inc 
  827. ;    1       Dec 
  828. ;    1       InputText 
  829. ;    6       DispStr 
  830. ;    93      AnsiPos 
  831. ;    1       Copy 
  832. ;    1       GetAltUser 
  833. ;
  834. ;
  835. ; ■ Functions used :
  836. ;
  837. ;    3       -
  838. ;    4       *
  839. ;    7       /
  840. ;    271     +
  841. ;    15      -
  842. ;    62      ==
  843. ;    25      <>
  844. ;    15      <
  845. ;    7       <=
  846. ;    6       >
  847. ;    12      >=
  848. ;    51      !
  849. ;    16      &&
  850. ;    14      ||
  851. ;    10      Len(
  852. ;    5       Upper()
  853. ;    3       Mid()
  854. ;    2       Left()
  855. ;    1       Right()
  856. ;    17      Space()
  857. ;    158     Chr()
  858. ;    1       Asc()
  859. ;    1       InStr()
  860. ;    4       Trim()
  861. ;    1       U_Name()
  862. ;    1       StripAtx()
  863. ;    6       Replace()
  864. ;    4       Inkey()
  865. ;    17      String()
  866. ;    7       PPEPath()
  867. ;    3       PcbNode()
  868. ;    5       ReadLine()
  869. ;    1       CallId()
  870. ;    1       I2S()
  871. ;    1       S2I()
  872. ;    1       GetX()
  873. ;    2       GetY()
  874. ;    1       U_RecNum()
  875. ;    2       ScrText()
  876. ;
  877. ;------------------------------------------------------------------------------
  878. ;
  879. ; Analysis flags : RH
  880. ;
  881. ; R - Read user ■ 5
  882. ;     User records are read, this may signify that someone wants to get
  883. ;     various informations about a user (for example his password), but
  884. ;     this may also be normal for a program accessing user records (for
  885. ;     example a User Editor)
  886. ;     ■ Search for : GETALTUSER
  887. ;
  888. ; H - Read Password or Password History ■ 5
  889. ;     Program is reading the user's password or last password history
  890. ;     This may be ok for a password manager, but it is very suspect. Check!
  891. ;     ■ Search for : U_PWDHIST, U_PWD
  892. ;
  893. ;------------------------------------------------------------------------------
  894. ;
  895. ; Postprocessing report
  896. ;
  897. ;    6       For/Next
  898. ;    2       While/EndWhile
  899. ;    43      If/Then or If/Then/Else
  900. ;    0       Select Case
  901. ;
  902. ;------------------------------------------------------------------------------
  903. ;                 AEGiS Corp - Break the routines, code against the machines!
  904. ;------------------------------------------------------------------------------
  905.